/******************************************************************************
 * * inter_setting_interface.h - internal interface between call and call log
 *
 * *(C) Copyright 2019 Asr International Ltd.
 * * All Rights Reserved
 * ******************************************************************************/
#ifndef INTER_CALL_CALLLOG_INTERFACE_H
#define INTER_CALL_CALLLOG_INTERFACE_H

#ifdef __cplusplus
extern "C" {
#endif

typedef enum {
    CALL_LOG_TYPE_NONE     = 0,
    CALL_LOG_TYPE_MISSED   = 1,
    CALL_LOG_TYPE_RECEIVED = 2,
    CALL_LOG_TYPE_DIALLED  = 3,
    CALL_LOG_TYPE_ALL      = 4
} CALL_LOG_TYPE;

typedef struct {
    MMI_MODEM_SIM_ID simId;     /* SIM ID */
    int              timestamp; /* Call timestamp, or year/month/day/hour/minute */
    int              duration;  /* Call duration */
    char             *number;   /* Remote party number */
    char             *name;     /* Remote party name */
} Call_Log_Data_t;

/**
 * Call app tells call log app to add a call log when there is a missed call,
 * or dialled/received call ends.
 * param (in) Data: NV_Call_Log_Data_t *
 * return void
 */
extern VOID CallLog_Call_Add_Log(NV_Call_Log_Data_t *Data);

#ifdef __cplusplus
}
#endif

#endif /*INTER_CALL_CALLLOG_INTERFACE_H*/
